home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine CD 1995 / Archive Magazine CD 1995.iso / discs / prog_disc / volume_5 / issue_06 / benchmarks / c_source / dwrite < prev    next >
Encoding:
Text File  |  1991-06-04  |  780 b   |  46 lines

  1. /*
  2.  * Write to disk benchmark
  3.  */
  4.  
  5. #include <stdio.h>
  6. #include "timer.h"
  7.  
  8. #define BLOCKS 256
  9.  
  10. main()
  11. {
  12.     char buffer[512];
  13.     char *filename = "a_large_file";
  14.     register int i;
  15.     int filedes;
  16.  
  17.     init_timer();
  18.     start_timer();
  19.  
  20.     if((filedes = creat(filename, 0640)) < 0)
  21.     {
  22.         printf("Cannot create file\n");
  23.         exit(1);
  24.     }
  25.     else
  26.     {
  27.         close(filedes);
  28.         if((filedes = open(filename, 1)) < 0)
  29.         {
  30.             printf("Cannot open file\n");
  31.             exit(1);
  32.         }
  33.     }
  34.  
  35.     for(i = 0; i < BLOCKS; i++)
  36.         if(write(filedes, buffer, 512) < 0)
  37.         {
  38.             printf("Error writing block %d\n", i);
  39.             exit(1);
  40.         }
  41.     close(filedes);
  42.     print_elapsed("dwrite benchmark", REALMIN);
  43.     exit(0);
  44. }
  45.  
  46.